package day06;

import java.util.Arrays;
import java.util.Scanner;

/**
 * 需求:<<主持人大赛>>有N位评委给选手打分
 *     选手的最终的分为:去掉最高分和最低分之后的N-2位评委的平均分
 * 要求使用方法实现
 */
public class CalTotalAvg {
    public static void main(String[] args) {
        double[] scores = inputData(6);
        double avg = calAvg(scores);
        System.out.println("平均分为: "+avg);
    }
    /** 用于录入N位评委的评分 */
    public static double[] inputData(int n){
        double[] scores= new double[n];//评分数组
        Scanner scan = new Scanner(System.in);
        for (int i=0;i<scores.length;i++){
            System.out.println("请录入第"+(i+1)+"位评委的分数");
            scores[i] = scan.nextDouble();
        }
        return scores;
    }
    /** 计算平均分 */
    public static double calAvg(double[] scores){
        double avg = 0.0;
        Arrays.sort(scores);
        double sum = 0;
        for (int i=1;i<scores.length-1;i++){
            sum = scores[i]+sum;
        }
        avg = sum / (scores.length-2);
        return avg;
        /*
        double total = 0.0;
        double max = scores[0];
        double min = scores[0];
        for (int i=0;i<scores.length;i++){
            total += scores[i];
            if (scores[i]>max){
                max = scores[i];
            }
            if (scores[i]<min){
                min = scores[i];
            }
        }
        double avg = (total-max-min)/(scores.length-2);
        return avg;

         */
    }
}
